Apparatus and Methods for Over the Air Provisioning of a Single PDP Context Mobile Communications Device

ABSTRACT

A mobile communications device and registration servar and methods of use thereof. The mobile communications device comprises means for establishing a first data context and means for establishing a second data context. The first data context is established to transmit a request for parameters from the mobile communications device to a first network node and to receive at the mobile communications device a response from the first network node including the parameters. The second data context is established by transmitting the parameters from the mobile communications device to the second network node.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to co-pending U.S. patent applicationSer. No. 10/981,416, filed Nov. 4, 2004, which is hereby incorporated byreference.

TECHNICAL FIELD OF THE APPLICATION

The present disclosure relates, in general, to wireless packet dataservice networks and, in particular, to apparatuses and methods for overthe air provisioning of a single PDP context mobile communicationsdevice operable to be disposed in the wireless packet data servicenetwork.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the features and advantages of thepresent methods and apparatuses, reference is now made to the detaileddescription along with the accompanying figures in which correspondingnumerals in the different figures refer to corresponding parts and inwhich:

FIG. 1 depicts an exemplary network environment including a wirelesspacket data service network wherein an embodiment of the present methodmay be practiced;

FIG. 2 depicts a block diagram of a mobile communications deviceaccording to one embodiment of the present disclosure;

FIG. 3 depicts a software architectural view of a mobile communicationsdevice according to one embodiment of the present disclosure;

FIG. 4 depicts additional details of an exemplary relay network operablewith a mobile communications device in accordance with an embodiment ofthe present disclosure;

FIG. 5 depicts a flowchart of an embodiment for establishing acommunication session for provisioning a single PDP context mobilecommunications device; and

FIG. 6 depicts a message flow diagram with respect to establishing acommunication session for provisioning a single PDP context mobilecommunications device.

DETAILED DESCRIPTION OF THE DRAWINGS

While various embodiments of a mobile communications device andregistration server operating within a network system are discussed indetail below, it should be appreciated that the present disclosureprovides many applicable inventive concepts which can be embodied in awide variety of specific contexts. The specific embodiments discussedherein are merely illustrative of specific ways to use the mobilecommunications device and registration server within the network system,and do not delimit the scope of the present disclosure.

According to a first aspect, the present disclosure relates to a methodfor provisioning a mobile communications device. The method comprisesestablishing a first data context to transmit a request for parametersfrom the mobile communications device to a first network node and toreceive at the mobile communications device a response from the firstnetwork node including the parameters. The method further comprisesestablishing a second data context between the mobile communicationsdevice and a second network node by transmitting the parameters from themobile communications device to the second network node.

In certain embodiments of the method, the first network node is operableas part of a relay network. The second node may be operable as part of aprovisioning system. In certain embodiments, the first and second datacontexts may be PDP contexts. In one embodiment, the first data contextmay be non web based while the second data context is web based.

According to a second aspect, the present disclosure relates to a mobilecommunications device. The device comprises means for establishing afirst data context to transmit a request for parameters from the mobilecommunications device to a first network node and to receive at themobile communications device a response from the first network nodeincluding the parameters. The device further comprises means forestablishing a second data context between the mobile communicationsdevice and a second network node by transmitting the parameters from themobile communications device to the second network node.

According to the third aspect, the present disclosure relates to amethod for provisioning a mobile communications device. The methodcomprises establishing a first data context between a first network nodeand the mobile communications device. The method further comprisesreceiving at the first network node from the mobile communicationsdevice a request for parameters to be transmitted from the mobilecommunications device to a second network node for provisioning of themobile communications device and transmitting a response from the firstnetwork node to the mobile communications device. The response includesthe parameters to be transmitted from the mobile communications deviceto the second network node for provisioning of the mobile communicationsdevice.

According to the fourth aspect, the present disclosure relates to aregistration server. The server comprises means for establishing a firstdata context between the registration server and a mobile communicationsdevice. The server further comprises means for receiving at theregistration server from the mobile communications device a request forparameters to be transmitted from the mobile communications device to asecond network node for provisioning of the mobile communications deviceand means for transmitting a response from the registration server tothe mobile communications device. The response includes the parametersto be transmitted from the mobile communications device to the secondnetwork node for provisioning of the mobile communications device.

Referring now to the drawings, and more particularly to FIG. 1, depictedtherein is an exemplary network environment 10 including a wirelesspacket data service network 12 wherein an embodiment of the presentmethod may be practiced. An enterprise network 14 for serving aplurality of corporate users, which may be a packet-switched network,can include one or more geographic sites and be organized as a localarea network (LAN), a wide area network (WAN), a metropolitan areanetwork (MAN) or the like. A number of application servers 16-1 through16-N disposed as part of the enterprise network 14 are operable toprovide or effectuate a host of internal and external services such asemail, video mail, Internet access, corporate data access, messaging,calendaring and scheduling, information management and the like.Accordingly, a diverse array of personal information appliances 18 suchas desktop computers, laptop computers, palmtop computers or the likemay be operably networked to one or more of the application servers16-i, i=1, 2, . . . , N, with respect to the services supported in theenterprise network 14.

Additionally, a remote services server 20 may be interfaced with theenterprise network 14 for enabling a corporate user to access oreffectuate any of the services from a remote location using a suitablesingle PDP context mobile communications device (MCD) 22. A securecommunication link with end-to-end encryption may be established that ismediated through an external IP network, i.e., a public packet-switchednetwork such as the Internet 24, as well as the wireless packet dataservice network 12 operable with MCD 22 via suitable wireless networkinfrastructure that includes a base station 26. In one embodiment, atrusted relay network 28 may be disposed between the Internet 24 and theinfrastructure of wireless packet data service network 12. By way ofexample, MCD 22 may be a data-enabled handheld device capable ofreceiving and sending messages, web browsing, interfacing with corporateapplication servers and the like.

For purposes of the present disclosure, the wireless packet data servicenetwork 12 may be implemented in any known or heretofore unknown mobilecommunications technologies and network protocols, as long as apacket-switched data service is available therein for transmittingpacketized information. For instance, the wireless packet data servicenetwork 12 may be comprised of a General Packet Radio Service (GPRS)network that provides a packet radio access for mobile devices using thecellular infrastructure of a Global System for Mobile Communications(GSM)-based carrier network. In other implementations, the wirelesspacket data service network 12 may comprise an Enhanced Data Rates forGSM Evolution (EDGE) network, an Integrated Digital Enhanced Network(IDEN), a Code Division Multiple Access (CDMA) network, a UniversalMobile Telecommunications System (UMTS) network, or any 3rd Generation(3G) network. As will be seen hereinbelow, the embodiments of thepresent disclosure for provisioning MCD 22 supporting a single PDPcontext will be described regardless of any particular wireless networkimplementation.

FIG. 2 depicts a block diagram of a single PDP context mobilecommunications device that is generally designated 30. It will berecognized by those skilled in the art upon reference hereto thatalthough an embodiment of MCD 30 may comprise an arrangement similar toone shown in FIG. 2, there can be any number of variations andmodifications, in hardware, software or firmware, with respect to thevarious modules depicted. Accordingly, the arrangement of FIG. 2 shouldbe taken as illustrative rather than limiting with respect to theembodiments of the present disclosure. A microprocessor 32 providing forthe overall control of MCD 30 is operably coupled to a communicationsubsystem 34 which includes a receiver 36 and transmitter 38 as well asassociated components such as one or more local oscillator (LO) modules40 and a processing module such as a digital signal processor (DSP) 42.As will be apparent to those skilled in the field of communications, theparticular design of the communication module 34 may be dependent uponthe communications network with which the mobile device is intended tooperate.

In one embodiment, the communication module 34 is operable with bothvoice and data communications. Regardless of the particular design,however, signals received by antenna 44 through base station 26 areprovided to receiver 36, which may perform such common receiverfunctions as signal amplification, frequency down conversion, filtering,channel selection, analog-to-digital (A/D) conversion, and the like.Similarly, signals to be transmitted are processed, including modulationand encoding, for example, by DSP 42, and provided to transmitter 44 fordigital-to-analog (D/A) conversion, frequency up conversion, filtering,amplification and transmission over the air-radio interface via antenna46.

Microprocessor 32 also interfaces with further device subsystems such asauxiliary input/output (I/O) 48, serial port 50, display 52, keyboard54, speaker 56, microphone 58, random access memory (RAM) 60, ashort-range communications subsystem 62 and any other device subsystemsgenerally labeled as reference numeral 64. To control access, aSubscriber Identity Module (SIM) or Removable user Identity Module(RUIM) interface 66 is also provided in communication with themicroprocessor 32. In one implementation, SIM/RUIM interface 66 isoperable with a SIM/RUIM card having a number of key configurations 68and other information 70 such as identification and subscriber-relateddata.

Operating system software and software associated with transport stack72 may be embodied in a persistent storage module (i.e., non-volatilestorage) such as Flash memory 74. In one implementation, Flash memory 74may be segregated into different areas, e.g., storage areas for computerprograms 76, device states 78, address book 80, other personalinformation manager (PIM) data 82 and other data storage areas generallylabeled as reference numeral 84. Additionally, a provisioning (PRV)logic module 86 is provided for provisioning certain aspects of MCD 30according to the teachings set forth herein.

FIG. 3 depicts a software architectural view of a mobile communicationsdevice operable according to one embodiment for provisioning certainaspects of the MCD regardless of the manufacturer of the MCD or thewireless service provider. A multi-layer transport stack (TS) 100 isoperable to provide a generic data transport protocol for any type ofcorporate data, including email, via a reliable, secure and seamlesscontinuous connection to a wireless packet data service network. Asillustrated in the embodiment of FIG. 3, an integration layer 102 isoperable as an interface between the MCD's radio layer 104 and thetransport stack 100. Likewise, another integration layer 106 is providedfor interfacing between the transport stack 100 and the userapplications 108 supported on the MCD, e.g., email 110,calendar/scheduler 112, contact management 114 and web browser 116.Although not specifically shown, the transport stack 100 may also beinterfaced with the MCD's operating system. In another implementation,the transport stack 100 may be provided as part of a data communicationsclient module operable as a host-independent virtual machine on a mobiledevice.

The bottom layer (Layer 1) of the transport stack 100 is operable as aninterface to the wireless network's packet layer. Layer 1 handles basicservice coordination within the exemplary network environment 10 shownin FIG. 1. For example, when an MCD roams from one carrier network toanother, Layer 1 verifies that the packets are relayed to theappropriate wireless network and that any packets that are pending fromthe previous network are rerouted to the current network. The top layer(Layer 4) exposes various application interfaces to the servicessupported on the MCD. The remaining two layers, Layer 2 and Layer 3, areresponsible for datagram segmentation/reassembly and security,compression and routing, respectively.

FIG. 3 also depicts a registration logic module 118 provided as part ofthe MCD's software environment that is disposed in operablecommunication with the transport stack 100 as well as the OS environmentfor effectuating registration procedures, as and when needed, with theserving relay network. In one implementation, where a PIN is nototherwise provided or associated with the MCD, the registration logicmodule 118 includes logic means operable to execute a registrationprocedure with the serving relay node to request and receive a PIN,which will allow identification of the MCD by this network node duringfuture communication sessions therebetween.

A PRV logic module 120 provided as part of the MCD's softwareenvironment is disposed in operable communication with the transportstack 100 as well as the OS environment. In one embodiment, the PRVlogic module 120 comprises logic operable to generate a requestincluding the PIN and at least one hardware device identifier associatedwith the MCD for transmission in a message to a network node such as theabove mentioned serving relay node with an associated registrationserver, provisioning server and the like. As stated above, the PIN maybe a required parameter in communications between an MCD and the servingrelay node for identification and verification purposes. As one ofordinary skill in the art should appreciate, the hardware deviceidentifier may comprise International Mobile station Equipment Identity(IMEI) parameters, International Mobile Subscriber Identity (IMSI)parameters, Electronic Serial Number (ESN) parameters, MobileIdentification Number (MIN) parameters, or the like, that are hard-codedinto MCDs depending on the wireless network technologies and protocols.Additionally, IP addresses corresponding to the MCDs may also operate asdevice identifiers. The PRV logic module 120 may then receive from thenetwork node a URL having a session ID appended thereto or otherwiseassociated therewith that may be based upon such techniques as hashingof the PIN, the hardware device identifier or both. This URL and sessionID is then available to browser 116 such that a suitable WAPcommunication session can be established between the MCD and anappropriate provisioning server such that certain aspects of the MCD maybe provisioned.

FIG. 4 depicts additional details of an exemplary relay networkinfrastructure 130 operable as part of relay network 28 interfacing withthe wireless packet data service network 12 described above. A relayservices node 132 is operable, at least in part, for providingconnectivity between MCDs and various data application services such asenterprise services, external IP data services and the like, regardlessof the geographic location of the MCDs and their respective wirelesscarriers. Also, since multiple relay services nodes can co-exist in adistributed network architecture, a relay bridge 134 may be provided inoperable connection with the relay services node 132 for supportinginter-relay connectivity. In one implementation, relay bridge 134connects with separate relay node sites, forming tunnels between relaysover which MCD messages can flow to and from services, irrespective ofthe region where the MCD is in.

Communication between the relay services node 132 and variousapplication gateways and servers is effectuated using any suitableprotocol, e.g., Server Relay Protocol (SRP), preferably over IP links.By way of illustration, remote services server 20 associated with theenterprise network 14 (shown in FIG. 1) communicates with the relayusing SRP for effectuating internal data services with respect to theenterprise's mobile subscribers. Likewise, reference numerals 136 and138 refer to external application gateways, such as Internet ServiceProvider (ISP) or Internet Access Provider (IAP) servers, and othergateways, respectively, which are also interfaced with the relay node132 using SRP. A peer-to-peer server 140 may also be provided inoperable connection with the relay node 132 for handling peer-levelmessaging between two MCDs.

Additionally, a database 142 may be provided in operable connection withthe relay node 132 for handling and managing MCD location information.Preferably, this location information is stored by PIN of the MCDs,wherein the records maintain a particular device's last known location.A registration server 144 is operable for providing registrationservices for MCDs when they are initially activated or when the userre-registers due to moving to a different wireless network coveragearea. In one implementation, the location information of registrationserver 144 may be programmed into an MCD. When the MCD registerssuccessfully, registration server 144 is operable to provide the servingrelay node's location, whereupon data sessions may be engaged by theMCD.

One or more wireless transport (WT) interfaces are provided as part ofrelay services node 132 for connecting with wireless carrier networksthat service MCDs. By way of illustration, WT 146 and WT 148 communicatewith respective packet routers 150 and 152 using TCP/IP links, whichroute data packets to and from respective wireless packet data servicenetworks, exemplified in FIG. 4 as carrier network 154 and carriernetwork 156. Although not specifically shown, registration server 144,which handles administration and registration services for MCDs, may beprovided with separate WT and packet routing for interfacing with thecarrier networks 154, 156.

A provisioning system (PRV) 158 may be colocated, integrated orotherwise associated with the relay services node 132 for setting up andmanaging various service providers (i.e., carrier networks),subscribers, MCD manufacturers, resellers and other entities in order tosupport any number of service and market differentiation requirements.Additionally, the provisioning system 158 may include logic forprovisioning personal information and preferences with respect tocertain aspects of the MCDs when they are initially activated for theassociated services. Also, subscriber validation logic may be providedas part of the provisioning system 158. Accordingly, the provisioningsystem 158 may be implemented with a plurality of interfaces withrespect to the various modules of the relay services node 132, e.g.,interfaces to registration servers, peer-to-peer servers, locationdatabases and the like, in addition to including attendant service logicprocessing that may be realized in suitable hardware, firmware and/orfirmware logic blocks as well as database structures.

FIG. 5 depicts a flowchart of an embodiment for establishing sequentialPDP contexts with a MCD that supports a single PDP context such that theMCD can be provisioned over the air via a remote provisioning system. Inthe present embodiment, the communication sessions may be both web basedand non web based communication sessions preferably using WirelessApplication Protocol (WAP) or other suitable communication protocol.Prior to full utilization of the MCD, certain aspect of the device'soverall functionality may need to be provisioned such as particularparameters to enable information to be pushed to the MCD. Theprovisioning of these aspects of the MCD may require authentication ofthe device, via a PIN, a device identifier or both, prior toprovisioning. When the MCD is manufactured, one or more deviceidentifiers such as IMEI, IMSI, ESN, MIN or the like are typicallyassociated with the device. A PIN for these desires services, on theother hand, may not be assigned to the device upon manufacturingrequiring the user to acquire such a PIN directly from the serviceprovider via an over the air request and response sequence, which maytake place with little or no user intervention. Additionally, once theMCD is deployed, it may be provided with an IP address since it is an IPappliance operable with a wireless packet data service network. Once thedevice has acquired the PIN relating to the aspects of the device theuser desires to provision, it is now desirable to make the provisioningprocess as seamless as possible such as through the use of a webbrowser.

It has been found, however, that many web browsers used in MCDs are notcapable of retrieving and using PIN and device identifier information.In addition, it has been found that many MCDs are capable of only asingle PDP context. The present disclosure, however, provides forsequential PDP contexts on the MCD and for communicating the PINinformation to the web browser to allow the web browser to establish acommunication session with the appropriate provisioning system. As such,those of ordinary skill in the art should recognized that the presentdisclosure is not only applicable to single PDP context MCDs but also toany MCD/network system wherein the two required PDP contexts cannotsimultaneously be active including, but not limited to, a MCD currentlyconducting its maximum number of PDP contexts, a network capable ofsupporting only one PDP context with a given MCD or the like.

Specifically, as detailed in method 170 of FIG. 5, once the MCD has theappropriate PIN, the transport stack of the MCD establishes a first datacontext, which is preferably a non web based PDP context with theregistration server (block 172). The transport stack accesses the PINand device identifier information and transmits a request for parametersto the registration server (block 174). In one embodiment, this requestfor parameter includes the PIN and a device identifier. This informationis then communicated from the registration server to the provisioningsystem which may be colocated, integrate or otherwise communicablyassociated with the registration server. The provisioning system canthen generate the requested parameters which, in the present example,are a URL associated with the provisioning system and a session IDappended thereto which is preferably based upon the PIN and the deviceidentifier such as by using a hashing technique. Preferably, theprovisioning system starts a clock to establish a time frame withinwhich the session ID will be valid. The provisioning system thancommunicates the requested parameters to the registration server whichis still in communication with the MCD via the first data context. Theregistration server then provides a response including the requestedparameters (the URL with session ID parameters) to the MCD whichreceives this information via the transport stack (block 176). Once theMCD has obtained the requested parameters, the first data contextbetween the MCD and the registration server is automatically released(block 178). The requested parameters are then passed to the web browserwhich automatically launches the web page associated with the URL, whichincludes the session ID such that the device information of the MCD isknown to the provisioning system. This establishes a second datacontext, which is preferably a web based PDP context with theprovisioning system (block 180). In this communication session, theaspects of the MCD that are associated with this service provider cannow be provisioned over the air using well known data entry techniquesvia the web browser (block 182). As such, the MCD can be seamlesslyprovisioned by establishing one data context with a registration serverto transmit a request for parameters and receive a response includingthe parameters then automatically releasing that data context andestablishing a second data context by transmitting the parameters to aprovisioning system.

FIG. 6 depicts a message flow diagram with respect to establishingsequential PDP contexts with a MCD that supports a single PDP contextsuch that the MCD can be provisioned over the air via a remoteprovisioning system that is generally designated 200. MCD 30 establishesa PDP context wherein a PRV request message 202 is transmitted by MCD 30to a network node, e.g., registration server 144, wherein the requestmessage 202 includes a PIN as well as a device identifier as parametricinformation. Registration server 144 queries suitable service logic,which may be embodied as the provisioning system 158 associated with therelay services network described above, by issuing a PRV query 204thereto, which includes the parametric information received in the PRVrequest 202. The provisioning system's PRV logic is operable to validatethe request and provide, via a PRV reply 208 to the registration server144, a message including a URL having session ID parameters appendedthereto. Within the first PDP context, this information is thentransmitted to MCD 30 via PRV response message 210 from registrationserver 144. Thereafter, MCD 30 automatically releases the first PDPcontext 212 and establishes a second PDP context with the PVR system158. This communication session is established by MCD 30 sending a PRVsession request 214 including the URL having session ID parameters. Inresponse thereto, the PVR system 158 is operable to validate 216 therequest to, among other things, assure that the session ID has notexpire. Upon successful validation, a provisioning session 218 betweenMCD 30 and PVR system 158 may occur to provision the associated aspectsof MCD 30.

While this disclosure has described a mobile communications deviceoperating within a network system with reference to illustrativeembodiments, this description is not intended to be construed in alimiting sense. Various modifications and combinations of theillustrative embodiments as well as other embodiments, will be apparentto persons skilled in the art upon reference to the description. It is,therefore, intended that the appended claims encompass any suchmodifications or embodiments.

1. A method for provisioning a mobile communications device comprising:establishing a first data context to transmit a request for parametersfrom the mobile communications device to a first network node and toreceive at the mobile communications device a response from the firstnetwork node including the parameters; and establishing a second datacontext between the mobile communications device and a second networknode by transmitting the parameters from the mobile communicationsdevice to the second network node.
 2. The method for provisioning amobile communications device as recited in claim 1 wherein the firstnetwork node is operable as part of a relay network.
 3. The method forprovisioning a mobile communications device as recited in claim 1wherein the second network node is operable as part of a provisioningsystem.
 4. The method for provisioning a mobile communications device asrecited in claim 1 wherein the first and second data contexts are PDPcontexts.
 5. The method for provisioning a mobile communications deviceas recited in claim 1 wherein the first data context is non web basedand the second data context is web based.
 6. A mobile communicationsdevice comprising: means for establishing a first data context totransmit a request for parameters from the mobile communications deviceto a first network node and to receive at the mobile communicationsdevice a response from the first network node including the parameters;and means for establishing a second data context between the mobilecommunications device and a second network node by transmitting theparameters from the mobile communications device to the second networknode.
 7. The mobile communications device as recited in claim 6 whereinthe first network node is operable as part of a relay network.
 8. Themobile communications device as recited in claim 6 wherein the secondnetwork node is operable as part of a provisioning system.
 9. The mobilecommunications device as recited in claim 6 wherein the first and seconddata contexts are PDP contexts.
 10. The mobile communications device asrecited in claim 6 wherein the first data context is non web based andthe second data context is web based.
 11. A method for provisioning amobile communications device comprising: establishing a first datacontext between a first network node and the mobile communicationsdevice; receiving at the first network node from the mobilecommunications device a request for parameters to be transmitted fromthe mobile communications device to a second network node forprovisioning of the mobile communications device; and transmitting aresponse from the first network node to the mobile communicationsdevice, the response including the parameters to be transmitted from themobile communications device to the second network node for provisioningof the mobile communications device.
 12. The method for provisioning amobile communications device as recited in claim 11 wherein the firstnetwork node is operable as part of a relay network.
 13. The method forprovisioning a mobile communications device as recited in claim 11wherein the second network node is operable as part of a provisioningsystem.
 14. The method for provisioning a mobile communications deviceas recited in claim 11 wherein the first data context is a PDP context.15. The method for provisioning a mobile communications device asrecited in claim 11 wherein the first data context is non web based. 16.A registration server comprising: means for establishing a first datacontext between the registration server and a mobile communicationsdevice; means for receiving at the registration server from the mobilecommunications device a request for parameters to be transmitted fromthe mobile communications device to a second network node forprovisioning of the mobile communications device; and means fortransmitting a response from the registration server to the mobilecommunications device, the response including the parameters to betransmitted from the mobile communications device to the second networknode for provisioning of the mobile communications device.
 17. Theregistration server as recited in claim 16 wherein the registrationserver is operable as part of a relay network.
 18. The registrationserver as recited in claim 16 wherein the second network node isoperable as part of a provisioning system.
 19. The registration serveras recited in claim 16 wherein the first data context is a PDP context.20. The registration server as recited in claim 16 wherein the firstdata context is non web based.